#ifndef PLUGININFOWIDGET_H
#define PLUGININFOWIDGET_H

#include <QTextEdit>
#include <QWidget>
#include "pluginJsonData.h"

namespace Ui {
class PluginInfoWidget;
}

class PluginInfoWidget : public QWidget
{
    Q_OBJECT

public:
    explicit PluginInfoWidget(QWidget *parent = nullptr);
    ~PluginInfoWidget();

    void setPluginJsonData(const PluginJsonData& data);

    void setPluginJsonErrorData(PluginJsonErrorData&& data);

    void updateProgressValue(int value);

    void init();
    bool is_status_normal() const;

private slots:
    void on_pushButton_clicked();

private:
    Ui::PluginInfoWidget *ui;
    bool _is_status_normal{true};

    QWidget* errorWidget{nullptr};
    QTextEdit* errorEdit{nullptr};

    PluginJsonErrorData _errorData;
};

#endif // PLUGININFOWIDGET_H
